这套Windows Phone 7的开发人员训练包,里面包括了8个App程序实例和4个XNA游戏实例:
1. HelloPhone - 你好 Windows Phone
2. YourFirstWP7Application - 创建你的第一个Windows Phone 7应用程序
3. WindowsPhoneNavigationAndControls - Windows Phone 的导航和控件
4. UsingPushNotifications - 使用 Push Notifications
5. LaunchersAndChoosers - 启动器与选择器
6. ApplicationLifecycle - 应用程序生命周期
7. UsingBingMaps - 使用 Bing Maps
8. UsingPivotAndPanoramaControls - 使用 Pivot 和 Panorama 控件
1. GameDevelopmentWithXNA - 使用XNA框架进行游戏开发
2. 2DGameDevelopmentWithXNA - 投石车大战实验
3. 2DGameDevelopmentWithXNA2 - 墓碑机制,启动器和选择器以及更多XNA框架的内容
4. 3DGameDevelopmentWithXNA - 使用XNA框架进行3D游戏开发
阅读了几篇App程序实例的文档说明,我对这套训练实验包的理解是熟悉开发工具、关键流程、架构基础、关键类库。我没有SilverLight的相关开发背景,入门其实没有想象中的简单,所以对这套训练包我只是快速浏览即可,要弄明白那些示例代码中的xaml需要花费相当的精力查阅资料。
训练包全部提供汉化的文档(貌似用翻译机器人汉化的)和源代码。文档是以step by step形式编写的,图片文字代码罗列的相当详细,一步一步走下来出错都难。所以这里只是记录一些自己认为需要关注的资料。
第一篇:Hello Windows Phone
万事开头易,Hello Word那永恒的经典必然是开篇第一章,逃不掉的。
查看文档,这一课程的目的主要是介绍VistualStudio2010和Blend4的关键操作以及模拟器的使用和Debug方式。在这个应用中将添加一个文本输入框,一个按钮,一个文本显示框,当按钮相应点击事件后,文本显示框将动画显示文本输入框中输入的内容。
收获:
1. 了解VistualStudio的Windows Phone项目模板,
新建一个WindowsPhoneApplication。项目创建后,默认会生几个关键文件:
App.xaml:类似于Web中的Global文件,可以编写WP程序生命周期的四个事件处理函数,编写全局的异常处理函数。
MainPage.xaml:类似于Web中的Default页面,是WP程序的第一个页面。
2. 了解WP应用程序的四个关键生命周期:
新建项目后,可以在App.xaml.cs中看到四个已经定义的函数:
Application_Launching - from Start
Application_Activated - brought to foreground
Application_Deactivated - sent to background
Application_Closing - user hit Back
通过代码中的注释,只能大概能看出来他们的作用。对几个函数加入断点Debug了一下,程序最先触发Application_Launching。当点击模拟器的Win键,会触发Application_Closing。当点击模拟器的Back键,会触发Application_Deactivated。Application_Activated在这个例子的代码中没有触发过。后面还有专门讲解生命周期的一个训练包,到时候应该能够掌握更多细节。
3. 初步了解SilverLight:
打开MainPage.xaml,xaml的编辑器很酷,UI编辑窗口和xaml代码窗口左右分栏显示。项目模板默认会通过Grid控件创建出Title加Content的上下分栏布局。文档的解释Grid是一个版面设计元素,它主要被用来排版,应该类似于Web中的Div和Table元素。SilverLight提供了几个版面设计控件,详细内容可以参考:http://msdn.microsoft.com/en-us/library/cc645025(VS.95).aspx
Canvas:定义了一个区域,在这个区域中可以根据需要协调子元素控件的位置。
Grid:定义了一个由列和行组成的灵活的网格区域。
StackPanel:把子控件元素按照水平和垂直排成一线。
3. 初步了解Blend:
Blend的复杂超过想想,十多个面板组织了差不多上百个选项,属性,菜单等。在VS的Solution Explorer中右击xaml文件,右键菜单中就有菜单项“Open in Expression Blend”,可以直接开启Blend对选中文件进行UI设计。
菜单:Widnows->Workspaces可以切换普通设计模式和动画时间线设计模式
面板:Objects and Timeline 对象树
面板:States可以对按钮等控件的焦点响应事件、鼠标移动事件设置对应的UI动态变化
面板:Transform可以设置对象的位移,变形,旋转等效果
面板:Easing设置动画关键帧切换时的动态变形速